//package com.controller;
//
//import com.pojo.Department;
//import com.pojo.Result;
//import com.service.DepartmentService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.validation.annotation.Validated;
//import org.springframework.web.bind.annotation.*;
//
//import java.util.Map;
//
//@RestController
//@RequestMapping("/departments")
//@Validated
//public class DepartmentController {
//    @Autowired
//    private DepartmentService departmentService;
//
//    // 新增部门（需管理员权限）
//    @PostMapping
//    public Result addDepartment(@RequestBody Department department) {
//        checkAdminPermission();
//        departmentService.add(department);
//        return Result.success();
//    }
//
//    // 查询部门树形结构（包含子部门）
//    @GetMapping("/tree")
//    public Result getDepartmentTree() {
//        return Result.success(departmentService.getDepartmentTree());
//    }
//
//    // 更新部门基础信息
//    @PutMapping
//    public Result update(@RequestBody Department department) {
//        departmentService.update(department);
//        return Result.success();
//    }
//
//    // 设置部门负责人
//    @PatchMapping("/{id}/manager")
//    public Result setManager(@PathVariable Integer id,
//                             @RequestParam Integer employeeId) {
//        departmentService.setManager(id, employeeId);
//        return Result.success();
//    }
//
//    // 权限校验工具方法
//    private void checkAdminPermission() {
//        Map<String, Object> claims = ThreadLocalUtil.get();
//        if (!"admin".equals(claims.get("role"))) {
//            throw new RuntimeException("权限不足");
//        }
//    }
//}